package com.eduadmin.service;

import com.eduadmin.entity.CourseDivide;

import java.util.List;
import java.util.Map;
/**
 * 统计报表-“班级学科一分段表”业务接口
 * */
public interface ICourseDivideService {
    /**
     * Author@zlc
     * 使用角色：管理员。
     * 功能模块：数据维护-管理统计报表
     * 功能：批量插入班级学科一分段记录列表值
     * 参数：(List<CourseDivide> courseDivideList
     **/
    int batchInsert(List<CourseDivide> courseDivideList);
    /**
     * Author@zlc
     * 使用角色：管理员，教师。
     * 功能模块：（管理员）数据查询-查询统计报表，（教师）数据查询-查询统计报表
     * 功能：（带分页条件）根据条件（学期&&年级&&考试&&分类&&学科英文名称）查找所有班级“指定学科”一分段记录，返回对象列表
     * 参数：Map<String,Object> paraMap
     **/
    List<CourseDivide> getAllCourseDivideByParams(Map<String,Object> paraMap);
    /**
     * Author@zlc
     * 使用角色：管理员，教师。
     * 功能模块：（管理员）数据查询-查询统计报表，（教师）数据查询-查询统计报表
     * 功能： （不带分页条件）返回满足条件（学期&&年级&&考试&&分类&&学科英文名称）的记录条数
     * 参数：Map<String,Object> paraMap
     **/
    int getAllCourseDivideNumberByParams(Map<String,Object> paraMap);
    /**
     * Author@zlc
     * 使用角色：管理员，教师。
     * 功能模块：（管理员）数据维护-管理统计报表，
     * 功能： // 根据条件（学期&&年级&&考试&&分类）删除所有的班级学科一分段记录，返回1
     * 参数：Map<String,Object> paraMap
     **/
    int deleteByParams(Map<String,Object> paraMap);
    /**
     * Author@zlc
     * 使用角色：管理员，教师。
     * 功能模块：（管理员）统计图表-成绩分布-班级学科一分段分布，（管理员）数据维护-管理统计报表（导出）
     *          （教师）统计图表-成绩分布-班级学科一分段分布
     * 功能：（用于统计图表和导出）根据条件（（不带分页条件）和 学期&&年级&&考试&&分类&&学科英文名称）查找所有班级“指定学科”一分段记录，返回对象列表
     * 参数：Map<String,Object> paraMap
     **/
    List<CourseDivide> getAllCourseDivideForChartsByParams(Map<String,Object> paraMap);
}
